package br.com.rise.leilao.financeiro

import grails.test.*

class BancoTests extends GrailsUnitTestCase {
    protected void setUp() {
        super.setUp()
    }

    protected void tearDown() {
        super.tearDown()
    }

	//testando se passa
	void testConstraintsSucesso() {
		
		mockDomain Banco, []
		def cc = new Banco(nome: "Banco do Brasil", codigo: "123")
		assertTrue cc.validate()
	}
	
	//testando a constraint nullable do nome
	void testNomeConstraintsNullable() {
		
		mockDomain Banco, []
		def banco = new Banco(codigo: "123")
		assertFalse banco.validate()
		assertEquals "nullable", banco.errors['nome']
	}
	
	//testando a constraint nullable do codigo
	void testCodigoConstraintsNullable() {
		
		mockDomain Banco, []
		def banco = new Banco(nome: "Banco do Brasil")
		assertFalse banco.validate()
		assertEquals "nullable", banco.errors['codigo']
	}
	
	//testando a constraint blank do campo nome
	void testNomeConstraintsBlank() {

		mockDomain Banco, []
		def banco = new Banco(nome: "", codigo: "123")
		assertFalse banco.validate()
		assertEquals "blank", banco.errors['nome']
	}
	
	//testando a constraint blank do campo nome
	void testCodigoConstraintsBlank() {

		mockDomain Banco, []
		def banco = new Banco(nome: "Banco do Brasil", codigo: "")
		assertFalse banco.validate()
		assertEquals "blank", banco.errors['codigo']
	}
	
	//teste toString nome
	void testToString() {
		def nome = new Banco(nome: "Banco do Brasil")
		assertToString nome, "Banco do Brasil"
	}
}
